import java.io.File;

/**
 * 完成简单的递归样例,然后完成文件检索功能
 */
public class RecursionDemo {
    public static void main(String[] args) {
        System.out.println(prime(5));
        System.out.println(prime(7));

        //定义根目录位置,这里没有c盘根目录的权限,所以不能直接遍历c盘根
        File root = new File("C:/data");
        search(root,"Card.java");
    }
    public static long prime(int n){
        return n!=0&&n!=1 ? n*prime(n-1) : 1;
    }

    //递归函数需要完成的操作是:输出一个路径,遍历下属文件,如果是文件夹就进一步深入,如果是文件就判断名字
    public static void search(File root,String name) {
        File[] f = root.listFiles();
        for (File file : f) {
            if(file.isFile() && name.equals(file.getName())){
                System.out.println(file.getAbsolutePath());
            }else if(file.isDirectory()){
                search(file,name);
            }
        }
    }
}
